package com.zhang.zxx.boot.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhang.zxx.boot.entity.DO.SysRole;
import com.zhang.zxx.boot.entity.DO.SysUserInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Set;

/**
 * <p>
 * 用户表 Mapper 接口
 * </p>
 *
 * @author zhangxiaoxiang
 * @since 2021-11-21
 */
@Mapper
public interface SysUserInfoMapper extends BaseMapper<SysUserInfo> {
    /**
     * 查询权限set
     *
     * @param userId 用户id
     * @return 权限set
     */
    Set<String> selectResourcesCodeByUserId(@Param("userId") String userId);

    /**
     * 查询角色set
     * @param userId 用户id
     * @return 角色set
     */
    Set<String> selectAuthRoleKeyByUserId(@Param("userId") String userId);

    /**
     * 根据用户id 查询已授权角色列表
     *
     * @param userId 用户id
     * @return 已授权角色列表
     */
    List<SysRole> selectAuthRoleListByUserId(@Param("userId") String userId);
}
